package com.huang.security.util;

import io.jsonwebtoken.Claims;
import io.jsonwebtoken.Jwts;
import io.jsonwebtoken.SignatureAlgorithm;
import jdk.nashorn.internal.parser.Token;

import java.util.Date;
import java.util.Map;

public class JwtUtils {

    //定义秘钥盐
 private static String secret="AABBCC";
  //基于负载和算法创建token信息
    public static String generatorToken(Map<String,Object> map){
        return Jwts.builder()
                .setClaims(map)
                .setExpiration(new Date())
                .signWith(SignatureAlgorithm.HS256,secret)
                . compact();
    }
    //解析秘钥token令牌
    public static Claims getClansToken(String token){

        return Jwts.parser().parseClaimsJws(token).getBody();
    }


    //判断是否存在秘钥token(是否存在令牌)
    public static boolean isTokenExpired(String token){
       Date expiration=getClansToken(token).getExpiration();

        return expiration.before(new Date());
    }


}
